To create more realistic characters in computer-generated images and computer-generated animation, such as for art, games, motion pictures and other computer graphics animations, it is desirable to produce a variety of lighting and coloration effects, such as wrinkles, on the skin of a character. Wrinkles typically are applied on the face or hand, but could be applied to the skin of other body parts. Wrinkles also could be applied to other surfaces.
In the context of both computer games and content creation applications, which enable artists to define a character and its appearance, wrinkles should be easily defined, viewed and changed. Ideally, these operations should be performed quickly enough to avoid making an artist wait to see results. The application should allow an artist to view the character in animation over time. In a game, these operations are performed in real time during game play.
Several techniques currently exist for implementing wrinkles in content creation applications and games. Software implemented rendering systems generally produce wrinkles with very high quality. However, such systems generally do not perform in real time. Real time applications generally involve implementation on a graphics processing unit (GPU).
One GPU-implemented technique simulates wrinkles by using per-pixel “bump mapping.” This technique involves generating a model of a surface at each vertex in a mesh representing a skin model, using what is called a vertex shader. This information for each vertex of a face is interpolated over each face (usually a triangle) in the mesh, when that information is passed to a fragment shader that generates the actual display data for that face.
Other examples of techniques for generating wrinkle patterns are described in:
1. “Dynamic Wrinkle Patterns and Hatching on Animated Meshes,” by Jörn Loviscach, in ShaderX5: Advanced Rendering Techniques, edited by Wolfgang Engel, (Charles River Media, 2006), pp 31-48.
2. “Fast Geometrical Wrinkles on Animated Surfaces,” by Pascal Volino and Nadia Magnethat Thalmann, in 7th International conference on Computer Graphics and Visualization, pp. 55-66, 1999.